package com.groupten.Service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.groupten.Entity.DictDataEntity;

import java.util.Map;

public interface DictDataService extends IService<DictDataEntity> {
    /**
     * 新增数据字典
     * @param dictDataEntity 字典实体
     * @return 新增是否成功
     */
    public Boolean insert(DictDataEntity dictDataEntity);

    /**
     * 根据字典类型查询字典数据
     *
     * @param type  字典类型
     * @param page  当前页
     * @param limit   每页数据数
     * @return 所有字典数据
     */
    public IPage<DictDataEntity> queryByType(String type, Integer page, Integer limit);

    /**
     * 根据字典标签查询字典数据
     * @param label 字典标签
     * @return 该字典数据
     */
    public DictDataEntity queryByLabel(String label);

    /**
     * 根据字典编号查询字典数据
     * @param id 字典编号
     * @return 该字典数据
     */
    public DictDataEntity queryById(Integer id);

    /**
     * 根据字典编号删除字典数据
     * @param id 字典编号
     * @return 删除的个数
     */
    public Integer deleteById(Integer id);

    /**
     * 根据字典类型删除字典数据
     * @param type 字典类型
     * @return 删除的个数
     */
    public Integer deleteByType(String type);

    /**
     * 根据字典类型和字典标签删除字典数据
     * @param type 字典类型
     * @param label 字典标签
     * @return 删除的个数
     */
    public Integer deleteByTypeAndLabel(String type,String label);

}
